home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / var / lib / dpkg / info / gdm.postinst < prev    next >
Encoding:
Text File  |  2007-04-10  |  3.6 KB  |  133 lines

  1. #!/bin/sh
  2.  
  3. set -e
  4.  
  5. . /usr/share/debconf/confmodule
  6.  
  7. THIS_PACKAGE=gdm
  8. DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
  9.  
  10. case "$1" in
  11. configure)
  12.     if grep "/usr/bin/gdm" $DEFAULT_DISPLAY_MANAGER_FILE; then
  13.         echo "/usr/sbin/gdm" > $DEFAULT_DISPLAY_MANAGER_FILE
  14.     fi
  15.     ;;
  16. esac
  17.  
  18. # creating gdm group if he isn't already there
  19. if ! getent group gdm >/dev/null; then
  20.         addgroup --system gdm
  21. fi
  22.  
  23. # creating gdm user if he isn't already there
  24. if ! getent passwd gdm >/dev/null; then
  25.         adduser --system --ingroup gdm --home /var/lib/gdm gdm
  26.     usermod -c "Gnome Display Manager" gdm
  27.     usermod -d "/var/lib/gdm"          gdm
  28.     usermod -g "gdm"                   gdm
  29.     usermod -s "/bin/false"            gdm
  30. fi
  31.  
  32. if [ -d /var/lib/gdm ]; then
  33.   chown -R gdm:gdm /var/lib/gdm
  34.   chmod 0750 /var/lib/gdm
  35. fi
  36.  
  37. # debconf is not a registry, so we only fiddle with the default file if it
  38. # does not exist
  39. if [ ! -e $DEFAULT_DISPLAY_MANAGER_FILE ]; then
  40.   if db_get shared/default-x-display-manager; then
  41.     if [ "$THIS_PACKAGE" != "$RET" ]; then
  42.       echo "Please be sure to run \"dpkg --configure $RET\"."
  43.     fi
  44.     if db_get "$RET"/daemon_name; then
  45.       echo "$RET" > $DEFAULT_DISPLAY_MANAGER_FILE
  46.     fi
  47.   fi
  48. fi
  49. if [ ! -e /etc/default/gdm ]; then
  50.   if db_get "locales/default_environment_locale"; then
  51.     if [ "$RET" = "None" ]; then
  52.       RET=
  53.     fi
  54.     # If there's a space in the answer, it's not valid, so go with the blank
  55.     # default instead.
  56.     if echo "$RET" | grep -q ' '; then
  57.       RET=
  58.     fi
  59.   else
  60.     RET=
  61.   fi
  62.   cat <<EOF > /etc/default/gdm
  63. # GDM Defaults, source in the init script that starts GDM.  LANG setting is
  64. # taken from the locales package by default.
  65. EOF
  66.   if [ -z "$RET" ]; then
  67.     cat <<EOF >> /etc/default/gdm
  68. #LANG=
  69. EOF
  70.   else
  71.     cat <<EOF >> /etc/default/gdm
  72. LANG=$RET
  73. EOF
  74.   fi
  75. fi
  76. # debconf hangs if gdm gets started below without this
  77. db_stop || true
  78.  
  79. gdm_running=
  80.  
  81. # NOTE: the binary on disk most likely has changed, so we can't use --exec
  82. if start-stop-daemon --stop --quiet --name gdm --signal 0 --pid /var/run/gdm.pid; then
  83.   gdm_running=yes
  84. fi
  85.  
  86. if [ -d /var/state/gdm ]; then
  87.   if [ "$gdm_running" ]; then
  88.     echo "Note: obsolete directory /var/state/gdm cannot be removed when gdm"
  89.     echo "is running.  Reinstall the gdm package (or remove the directory"
  90.     echo "manually) when gdm is not running."
  91.   else
  92.     rm -r /var/state/gdm
  93.   fi
  94. fi
  95.  
  96. if [ -e /etc/rc2.d/S99gdm ]; then
  97.   update-rc.d -f gdm remove >/dev/null
  98. fi
  99.  
  100. if [ -x /etc/init.d/gdm ]; then
  101.   update-rc.d gdm defaults 13 01 >/dev/null 2>&1
  102.   invoke-rc.d gdm reload || true
  103. fi
  104.  
  105. # Automatically added by dh_installmenu
  106. if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then
  107.     update-menus
  108. fi
  109. # End automatically added section
  110. # Automatically added by dh_scrollkeeper
  111. if [ "$1" = "configure" ] && which scrollkeeper-update >/dev/null 2>&1; then
  112.     scrollkeeper-update -q >/dev/null 2>&1
  113. fi
  114. # End automatically added section
  115. # Automatically added by dh_desktop
  116. if [ "$1" = "configure" ] && which update-desktop-database >/dev/null 2>&1 ; then
  117.     update-desktop-database -q
  118. fi
  119. # End automatically added section
  120. # Automatically added by dh_iconcache
  121. touch -m /usr/share/icons/hicolor
  122. if [ "$1" = configure ] && \
  123.    [ -x "`which gtk-update-icon-cache 2>/dev/null`" ] && \
  124.    [ -f /etc/gtk-2.0/gdk-pixbuf.loaders ] && \
  125.    [ "`find /usr/share/icons/hicolor -mindepth 1 -maxdepth 1 -type d | wc -l`" -gt 0 ] && \
  126.    [ "`find /usr/share/icons/hicolor -mindepth 1 -maxdepth 1 -type f -name index.theme | wc -l`" -eq 1 ]; then
  127.     gtk-update-icon-cache -q /usr/share/icons/hicolor
  128. fi
  129. # End automatically added section
  130.  
  131.  
  132. exit 0
  133.